1. Field
The following description relates to a technique for reducing overhead caused by communication from one cluster to another cluster.
2. Description of the Related Art
An application program that includes large parallelism typically requires a register file that has a great number of ports and registers to concurrently access many operands during processing. However, implementation of such a register file is very difficult and incurs enormous hardware expense.
To solve these drawbacks, a clustered architecture has been introduced. In a clustered architecture an independent register file is provided for each cluster unit. The clustered architecture typically has a small number of ports, and operations are concurrently input to multiple clusters and executed. In the clustered architecture, access to many operands is possible, thus various application programs can be executed with a register file having a simpler architecture.
However, if one cluster needs to access a register file that is outside of the cluster, for example, if one cluster needs to move data or copy data to a register file of another cluster, overhead may be incurred. In this example, if the cluster has a large number of data move or data copy operations to a register file of another cluster, a large amount of overhead may be incurred and throughput efficiency may be degraded.